#ifndef MAGICDOCCONSOLE_H_HEADER_INCLUDED_B4F2C937
#define MAGICDOCCONSOLE_H_HEADER_INCLUDED_B4F2C937

#include "Format/FormatHandler.h"
#include "DocStore/DocInfoCenter.h"
#include "definition.h"
#include "utils.h"

class MagicDocConsole: public Singleton<MagicDocConsole>
{
protected:
    wxDocManager *m_docManager;
public:
    enum FormatType
    {
        UnknownType,
        Text, 
        Html,
    };

    MagicDocConsole();
    ~MagicDocConsole();
    FormatHandler* SelectFormatHandler(STRING path, FormatType type = UnknownType);


    Document* GetCurrentDoc();
    Document* CreateDoc(STRING filename);
    Document* OpenDoc(STRING filename);
private:
    Document m_ActiveDoc;
};

#endif /* MAGICDOCCONSOLE_H_HEADER_INCLUDED_B4F2C937 */
